<?php

include_once('bitacora.php');

/**
* Clase singletone para conectarse a la base de datos
*/
Class Conexion
{
	private static $instancia = NULL;
	private static $conexion = NULL;
	private $ultimo_resultado;

/* Hasta que se implemente como es debido */
private static $host = 'localhost';
private static $port = '5432';
private static $user = 'ctf_usuario';
private static $passwrd = 'woiu203refjdal';
private static $dbname = 'ctf-2013';
/* -------------------------------------- */

	private function __construct($str = "")
	{
		$str = 'host='.self::$host.' port='.self::$port.' user='.self::$user.' password='.self::$passwrd.' dbname='.self::$dbname;
		self::$conexion = pg_connect($str) or die ("Error: " . pg_last_error(self::$conexion));
	}

	/**
	* Obtener la instancia del singleton
	*/
	public static function GetInstancia()
	{
		if(self::$instancia == NULL) self::$instancia = new self();

		return self::$instancia;
	}

	function __destruct()
	{
	       pg_close(self::$conexion);
   	}

	/**
	* Ejecutar una consulta
	* @return resource
	* @param string $sql Sql a ejecutar
	*/
	function Ejecutar($sql)
	{
		return $this->last_result = pg_exec(self::$conexion, $sql);
	}

	/**
	* Get the last error message
	* @return string Error description
	*/
	function LastError()
	{
		return pg_last_error(self::$conexion);
	}

	/**
	* Get the last error message
	* @return string Error description
	*/
	function Logout()
	{
		session_destroy();
	}

	function autenticarUsuario($mail, $contrasenha){
		$mail = addslashes($mail);
		$contrasenha = addslashes($contrasenha);

		$r = pg_exec($conexion, "select check_password((select id from participantes where mail = '$mail'),'$passwrd')");
		$result = pg_result($r, 0, 0);

		if(!strcasecmp($result,'t')) $succeed = true;
		else $succeed = false;

		return $succeed;
	}

}
?>
